﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Huirui.Cavan.Presentation.Seedwork;
using Huirui.Cavan.Domain.MainBoundedContext.StockModule;
using Huirui.Cavan.Domain.MainBoundedContext.SearchModule;
using Huirui.Cavan.Presentation.ViewModel.PurchaseModule;
using System.Web.Mvc;

namespace Huirui.Cavan.Presentation.ViewModel.StockModule
{
    public class StockInOutViewModel : EntityModel<StockInOut, string, StockInOutSearch>, IStockInOutViewModel
    {
        public string StockInDetails { get; set; }
        public decimal TaxRate { get; set; }
        public PurchaseOrderSearch PurchaseOrderSearch { get; set; }
        public string PurchaseOrders { get; set; }
        public int Type { get; set; }
        public bool IsIn { get; set; }
        public IList<SelectListItem> StockInOutTypes { get; set; }

        public StockInOutViewModel()
        {
            this.StockInOutTypes = new List<SelectListItem>();
        }
    }

    public class StockInOutJson : BaseJson<string>
    {
        public string Currency { get; set; }
        public decimal CurrencyRate { get; set; }
        public string SupplierInvoiceNumber { get; set; }
        public string DeliveryAddress { get; set; }
        public string Remark { get; set; }
        public string Contact { get; set; }
        public string ContactTelephone { get; set; }
        public string EmployeeCode { get; set; }
        public string EmployeeName { get; set; }
        public string ProjectCode { get; set; }
        public string SupplierCode { get; set; }
        public string SupplierName { get; set; }
        public string WareHouseCode { get; set; }
        public decimal TaxRate { get; set; }
        public string InOutDate { get; set; }
        public decimal Amount { get; set; }
        public string Producer { get; set; }
    }

    public class StockInOutJsonViewModel : JsonViewModel<StockInOutJson>
    {

    }
}
